Skip to content

Fix rustc-guide build failure ignoring no-fail-fast - #63089

Merged
bors merged 1 commit into
rust-lang:masterfrom
kennytm:use-try-run-for-linkchecker
Jul 29, 2019
Merged

Fix rustc-guide build failure ignoring no-fail-fast#63089
bors merged 1 commit into
rust-lang:masterfrom
kennytm:use-try-run-for-linkchecker

Conversation

@kennytm

Copy link
Copy Markdown
Member

No description provided.

@kennytmkennytm added T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. labels Jul 28, 2019
@rust-highfive

Copy link
Copy Markdown
Contributor

r? @nikomatsakis

(rust_highfive has picked a reviewer for you, use r? to override)

@rust-highfiverust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 28, 2019
@kennytm
kennytmforce-pushed the use-try-run-for-linkchecker branch from 62196d1 to 20924d2CompareJuly 28, 2019 18:03
@kennytmkennytm removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 28, 2019
@Centril

Copy link
Copy Markdown
Contributor

r? @pietroalbini

@emilyalbini

Copy link
Copy Markdown
Member

r? @Mark-Simulacrum

Comment threadsrc/bootstrap/test.rs Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll definitely want try_run_quiet here as try_run eats the command's output (a horrible and non-obvious default, I know -- we should fix that).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wait so quiet makes it not eat the output? That's, like, the opposite of what the name indicates.^^

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, try_run internally calls run_silent which will eat all the output unconditionally, I believe.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The one in lib.rs does, yeah. The one in test.rs calls builder.run.

So Builder::try_run should maybe just be renamed to try_run_silent, like the free-standing function it calls?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fun times, there's both free-standing run_silent (called by Builder::run) and run_suppressed (called by Builder::run_quiet).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, @Mark-Simulacrum are you sure about this? try_run_silent calls Command::status which says that

By default, stdin, stdout and stderr are inherited from the parent.

I have no idea why it is called "silent". There is no comment explaining that.

In contrast, run_suppressed (the helper behind Builder::run_quiet) calls Command::output, which does capture the output, and then throws it away (unless there was an error).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See #63196: I think you are wrong and try_run does not eat the commends output. In contrast, try_run_quietdoes eat (suppress) the output.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, you could definitely be right! I don't have a good handle on these functions beyond "too many and bad naming" :)

@Mark-Simulacrum

Copy link
Copy Markdown
Member

r=me with that and the azure config change reverted

This caused clippy not being built on Linux previously.
@kennytm
kennytmforce-pushed the use-try-run-for-linkchecker branch from 20924d2 to ebd1bf7CompareJuly 29, 2019 03:53
@kennytmkennytm changed the title [WIP] Fix rustc-guide build failure ignoring no-fail-fastFix rustc-guide build failure ignoring no-fail-fastJul 29, 2019
@kennytmkennytm added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 29, 2019
@kennytm

Copy link
Copy Markdown
MemberAuthor

@bors r=Mark-Simulacrum

@bors

bors commented Jul 29, 2019

Copy link
Copy Markdown
Collaborator

📌 Commit ebd1bf7 has been approved by Mark-Simulacrum

@borsbors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 29, 2019
@bors

bors commented Jul 29, 2019

Copy link
Copy Markdown
Collaborator

⌛ Testing commit ebd1bf7 with merge 04b88a9...

bors added a commit that referenced this pull request Jul 29, 2019
…mulacrum
Fix rustc-guide build failure ignoring no-fail-fast
@bors

bors commented Jul 29, 2019

Copy link
Copy Markdown
Collaborator

☀️ Test successful - checks-azure
Approved by: Mark-Simulacrum
Pushing 04b88a9 to master...

@borsbors added the merged-by-bors This PR was explicitly merged by bors. label Jul 29, 2019
@bors
bors merged commit ebd1bf7 into rust-lang:masterJul 29, 2019
@kennytm
kennytm deleted the use-try-run-for-linkchecker branch July 29, 2019 18:57
Centril added a commit to Centril/rust that referenced this pull request Aug 2, 2019
build_helper: try less confusing method names
build_helper's `*_silent` methods were likely called that way because they do not print the command being run to stdout. [In the original file this all makes sense](rust-lang@046e687#diff-5c3d6537a43ecae03014e118a7fe3321). But later it also gained `*_suppressed` methods and the difference between `silent` and `suppressed` is far from clear.
So rename `run` (which prints the command being run) to `run_verbose`. Then we can call the methods that just run a command and show its output but nothing extra `run` and `try_run`.
`run_verbose` (formerly `run`) is unused from what I can tell. Should I remove it?
r? @alexcrichton
Cc @Mark-Simulacrum
Also see rust-lang#63089 (comment).
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-borsThis PR was explicitly merged by bors.S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-infraRelevant to the infrastructure team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@kennytm@rust-highfive@Centril@emilyalbini@Mark-Simulacrum@bors@RalfJung@nikomatsakis