Skip to content

give a better error when origin/HEAD is vastly out of date #118758

Open
@jyn514

Description

@jyn514

i just tried to compile a recent branch of my fork and got this confusing error:

downloading https://ci-artifacts.rust-lang.org/rustc-builds/3572d7451d1062e8bccf310af6bbf6255091d296/rust-dev-nightly-x86_64-pc-windows-msvc.tar.xz
curl: (22) The requested URL returned error: 404

Fallback to PowerShell
Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an 
error: (404) Not Found."
At line:1 char:82
+ ... pe]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://c ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : WebException
 
thread 'main' panicked at src\core\download.rs:211:9:
std::fs::rename(&tempfile, dest_path) failed with The system cannot find the file specified. (os error 2)

notice that 3572d74 is from june. this is because git merge-base origin/master HEAD outputs 69a6373, which in turn is because origin/master points to 69a6373, which is 6 months old.

it would be nice for bootstrap to give a warning if origin/master is massively outdated. anything more than a week is probably suspect, or if there's any commits in git log origin/master..HEAD that aren't authored by the current user.

there is a second error here that apparently the help_on_error reporting only works on linux, not windows.

@rustbot label +A-diagnostics +T-bootstrap

Metadata

Metadata

Assignees

Labels

A-diagnosticsArea: Messages for errors, warnings, and lintsT-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions