Skip to content

Commit

Permalink
boostrap.py: only look for merges by bors
Browse files Browse the repository at this point in the history
Only look for commits by bors that are merge commits, because
those are the only ones with CI artifacts. Also, use
`--first-parent` to avoid traversing stuff like rollup branches.
  • Loading branch information
tlyu committed Jul 28, 2021
1 parent 5d28520 commit e0d7a59
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions src/bootstrap/bootstrap.py
Expand Up @@ -464,7 +464,7 @@ def download_toolchain(self, stage0=True, rustc_channel=None):
# LLVM more often than necessary.
#
# This git command finds that commit SHA, looking for bors-authored
# commits that modified src/llvm-project or other relevant version
# merges that modified src/llvm-project or other relevant version
# stamp files.
#
# This works even in a repository that has not yet initialized
Expand All @@ -474,7 +474,7 @@ def download_toolchain(self, stage0=True, rustc_channel=None):
]).decode(sys.getdefaultencoding()).strip()
llvm_sha = subprocess.check_output([
"git", "rev-list", "--author=bors@rust-lang.org", "-n1",
"--first-parent", "HEAD",
"--merges", "--first-parent", "HEAD",
"--",
"{}/src/llvm-project".format(top_level),
"{}/src/bootstrap/download-ci-llvm-stamp".format(top_level),
Expand Down Expand Up @@ -666,7 +666,10 @@ def maybe_download_ci_toolchain(self):

# Look for a version to compare to based on the current commit.
# Only commits merged by bors will have CI artifacts.
merge_base = ["git", "rev-list", "--author=bors@rust-lang.org", "-n1", "HEAD"]
merge_base = [
"git", "rev-list", "--author=bors@rust-lang.org", "-n1",
"--merges", "--first-parent", "HEAD"
]
commit = subprocess.check_output(merge_base, universal_newlines=True).strip()

# Warn if there were changes to the compiler or standard library since the ancestor commit.
Expand Down

0 comments on commit e0d7a59

Please sign in to comment.