-
Notifications
You must be signed in to change notification settings - Fork 12.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Auto merge of #69950 - Centril:rollup-xh0hmvx, r=Centril
Rollup of 10 pull requests Successful merges: - #68899 (Add Display and Error impls for proc_macro::LexError) - #69011 (Document unsafe blocks in core::fmt) - #69674 (Rename DefKind::Method and TraitItemKind::Method ) - #69705 (Toolstate: remove redundant beta-week check.) - #69722 (Tweak output for invalid negative impl AST errors) - #69747 (Rename rustc guide) - #69792 (Implement Error for TryReserveError) - #69830 (miri: ICE on invalid terminators) - #69921 (rustdoc: remove unused import) - #69945 (update outdated comment) Failed merges: r? @ghost
- Loading branch information
Showing
140 changed files
with
543 additions
and
431 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -215,13 +215,21 @@ impl Step for ToolStateCheck { | |
tool, old_state, state | ||
); | ||
} else { | ||
// This warning only appears in the logs, which most | ||
// people won't read. It's mostly here for testing and | ||
// debugging. | ||
eprintln!( | ||
"warning: Tool `{}` is not test-pass (is `{}`), \ | ||
this should be fixed before beta is branched.", | ||
tool, state | ||
); | ||
} | ||
} | ||
// `publish_toolstate.py` is responsible for updating | ||
// `latest.json` and creating comments/issues warning people | ||
// if there is a regression. That all happens in a separate CI | ||
// job on the master branch once the PR has passed all tests | ||
// on the `auto` branch. | ||
} | ||
} | ||
|
||
|
@@ -230,7 +238,7 @@ impl Step for ToolStateCheck { | |
} | ||
|
||
if builder.config.channel == "nightly" && env::var_os("TOOLSTATE_PUBLISH").is_some() { | ||
commit_toolstate_change(&toolstates, in_beta_week); | ||
commit_toolstate_change(&toolstates); | ||
} | ||
} | ||
|
||
|
@@ -325,11 +333,11 @@ fn prepare_toolstate_config(token: &str) { | |
Err(_) => false, | ||
}; | ||
if !success { | ||
panic!("git config key={} value={} successful (status: {:?})", key, value, status); | ||
panic!("git config key={} value={} failed (status: {:?})", key, value, status); | ||
} | ||
} | ||
|
||
// If changing anything here, then please check that src/ci/publish_toolstate.sh is up to date | ||
// If changing anything here, then please check that `src/ci/publish_toolstate.sh` is up to date | ||
// as well. | ||
git_config("user.email", "[email protected]"); | ||
git_config("user.name", "Rust Toolstate Update"); | ||
|
@@ -373,14 +381,14 @@ fn read_old_toolstate() -> Vec<RepoState> { | |
/// | ||
/// * See <https://help.github.com/articles/about-commit-email-addresses/> | ||
/// if a private email by GitHub is wanted. | ||
fn commit_toolstate_change(current_toolstate: &ToolstateData, in_beta_week: bool) { | ||
let old_toolstate = read_old_toolstate(); | ||
|
||
fn commit_toolstate_change(current_toolstate: &ToolstateData) { | ||
let message = format!("({} CI update)", OS.expect("linux/windows only")); | ||
let mut success = false; | ||
for _ in 1..=5 { | ||
// Update the toolstate results (the new commit-to-toolstate mapping) in the toolstate repo. | ||
change_toolstate(¤t_toolstate, &old_toolstate, in_beta_week); | ||
// Upload the test results (the new commit-to-toolstate mapping) to the toolstate repo. | ||
// This does *not* change the "current toolstate"; that only happens post-landing | ||
// via `src/ci/docker/publish_toolstate.sh`. | ||
publish_test_results(¤t_toolstate); | ||
|
||
// `git commit` failing means nothing to commit. | ||
let status = t!(Command::new("git") | ||
|
@@ -429,31 +437,12 @@ fn commit_toolstate_change(current_toolstate: &ToolstateData, in_beta_week: bool | |
} | ||
} | ||
|
||
fn change_toolstate( | ||
current_toolstate: &ToolstateData, | ||
old_toolstate: &[RepoState], | ||
in_beta_week: bool, | ||
) { | ||
let mut regressed = false; | ||
for repo_state in old_toolstate { | ||
let tool = &repo_state.tool; | ||
let state = repo_state.state(); | ||
let new_state = current_toolstate[tool.as_str()]; | ||
|
||
if new_state != state { | ||
eprintln!("The state of `{}` has changed from `{}` to `{}`", tool, state, new_state); | ||
if new_state < state { | ||
if !NIGHTLY_TOOLS.iter().any(|(name, _path)| name == tool) { | ||
regressed = true; | ||
} | ||
} | ||
} | ||
} | ||
|
||
if regressed && in_beta_week { | ||
std::process::exit(1); | ||
} | ||
|
||
/// Updates the "history" files with the latest results. | ||
/// | ||
/// These results will later be promoted to `latest.json` by the | ||
/// `publish_toolstate.py` script if the PR passes all tests and is merged to | ||
/// master. | ||
fn publish_test_results(current_toolstate: &ToolstateData) { | ||
let commit = t!(std::process::Command::new("git").arg("rev-parse").arg("HEAD").output()); | ||
let commit = t!(String::from_utf8(commit.stdout)); | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,12 @@ | ||
# Contributing to rustc | ||
|
||
We'd love to have your help improving `rustc`! To that end, we've written [a | ||
whole book][rustc_guide] on its | ||
whole book][rustc_dev_guide] on its | ||
internals, how it works, and how to get started working on it. To learn | ||
more, you'll want to check that out. | ||
|
||
If you would like to contribute to _this_ book, you can find its source in the | ||
rustc source at [src/doc/rustc][rustc_book]. | ||
|
||
[rustc_guide]: https://rust-lang.github.io/rustc-guide/ | ||
[rustc_dev_guide]: https://rustc-dev-guide.rust-lang.org/ | ||
[rustc_book]: https://github.com/rust-lang/rust/tree/master/src/doc/rustc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.