rust icon indicating copy to clipboard operation
rust copied to clipboard

Avoid panicking on missing fallback

Open Mark-Simulacrum opened this issue 3 years ago • 2 comments

This just prints a message but continues on if a fallback is missing, which can happen when we're building a partial set of builders and producing a dev-static build from it (e.g., when no Apple builder runs at all).

Probably the more extensive fix is to allow the build-manifest invoker to specify the expected set of targets & hosts, but that's a far more extensive change. The main risk from this is that we accidentally start falling back to linux docs across all platforms without noticing. I'm not sure that we can do much about that though at this time.

cc @ehuss since IIRC you participated in adding this system

This comes up when building a test nightly from a try build, e.g., https://github.com/rust-lang/rust/pull/101855#issuecomment-1250123298. For now I'm going to manually cherry pick this onto that PR for testing purposes.

Mark-Simulacrum avatar Sep 17 '22 22:09 Mark-Simulacrum

@Mark-Simulacrum: no appropriate reviewer found, use r? to override

rust-highfive avatar Sep 17 '22 22:09 rust-highfive

The job mingw-check failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
configure: rust.debug-assertions := True
configure: rust.overflow-checks := True
configure: llvm.assertions      := True
configure: dist.missing-tools   := True
configure: build.configure-args := ['--enable-sccache', '--disable-manage-submodu ...
configure: writing `config.toml` in current directory
configure: 
configure: run `python /checkout/x.py --help`
Attempting with retry: make prepare
---
skip untracked path cpu-usage.csv during rustfmt invocations
skip untracked path src/doc/book/ during rustfmt invocations
skip untracked path src/doc/rust-by-example/ during rustfmt invocations
skip untracked path src/llvm-project/ during rustfmt invocations
Diff in /checkout/src/tools/build-manifest/src/main.rs at line 545:
                     let t = Target::from_compressed_tar(self, &tarball_name!(fallback_target));
                     // Fallbacks must always be available.
                     if !t.available {
-                        eprintln!("{:?} not available for fallback", tarball_name!(fallback_target));
+                        eprintln!(
+                            "{:?} not available for fallback",
+                            tarball_name!(fallback_target)
                         continue;
                     }
                     return t;
                     return t;
Running `"/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/rustfmt" "--config-path" "/checkout" "--edition" "2021" "--unstable-features" "--skip-children" "--check" "/checkout/src/tools/replace-version-placeholder/src/main.rs" "/checkout/src/tools/build-manifest/src/main.rs" "/checkout/src/tools/tidy/src/walk.rs" "/checkout/src/tools/build-manifest/src/manifest.rs" "/checkout/src/tools/tidy/src/extdeps.rs" "/checkout/src/tools/build-manifest/src/versions.rs" "/checkout/src/tools/tidy/src/unstable_book.rs" "/checkout/src/tools/linkchecker/tests/checks.rs"` failed.
If you're running `tidy`, try again with `--bless`. Or, if you just want to format code, run `./x.py fmt` instead.

rust-log-analyzer avatar Sep 17 '22 22:09 rust-log-analyzer

@bors r+ rollup

ehuss avatar Sep 21 '22 13:09 ehuss

:pushpin: Commit 84fb168d7f0f143fc9d666cc6de757c3d0949ced has been approved by ehuss

It is now in the queue for this repository.

bors avatar Sep 21 '22 13:09 bors