Fix commit detected when using download-rustc
On reflection on the issue in https://github.com/rust-lang/rust/pull/79540#discussion_r572572280, I think the bug was actually using the `compiler/` filter, not using `--author=bors`.9a1d6174c9
has no CI artifacts because it was merged as part of a rollup: ``` $ curl -I https://ci-artifacts.rust-lang.org/rustc-builds/96e843ce6ae42e0aa519ba45e148269de347fd84/rust-std-nightly-x86_64-unknown-linux-gnu.tar.xz HTTP/2 404 ``` So9a1d6174c9
is the correct commit to download, and that's what `--author=bors` does: $ git log --author=bors4aec8a5da5
commit9a1d6174c9
Ideally it would look for "the most recent bors commit not followed by a change to `compiler/`", which would exclude things like documentation changes and avoid redownloading more than necessary, but - Redownloading isn't the end of the world, - That metric is hard to implement, and - Documentation-only or library-only changes are very rare anyway since they're usually rolled up with changes to the compiler.
This commit is contained in:
parent
edeee915b1
commit
a705a58fe9
1 changed files with 2 additions and 3 deletions
|
@ -647,9 +647,8 @@ class RustBuild(object):
|
|||
compiler = "{}/compiler/".format(top_level)
|
||||
|
||||
# Look for a version to compare to based on the current commit.
|
||||
# Ideally this would just use `merge-base`, but on beta and stable branches that wouldn't
|
||||
# come up with any commits, so hack it and use `author=bors` instead.
|
||||
merge_base = ["git", "log", "--author=bors", "--pretty=%H", "-n1", "--", compiler]
|
||||
# Only commits merged by bors will have CI artifacts.
|
||||
merge_base = ["git", "log", "--author=bors", "--pretty=%H", "-n1"]
|
||||
commit = subprocess.check_output(merge_base, universal_newlines=True).strip()
|
||||
|
||||
# Warn if there were changes to the compiler since the ancestor commit.
|
||||
|
|
Loading…
Add table
Reference in a new issue