2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions - #160959

Closed
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning
Closed

2026/08/12 -- hrsraiden -- bootstrap: warn when download-ci-llvm is unavailable with assertions#160959
HRSRaiden wants to merge 1 commit into
rust-lang:mainfrom
HRSRaiden:fix-160919-ci-llvm-warning

Conversation

@HRSRaiden

@HRSRaidenHRSRaiden commented Aug 12, 2026

Copy link
Copy Markdown

Fixes#160919.

When llvm.download-ci-llvm = true and llvm.assertions = true are set in config.toml, but no assertion-enabled alt CI LLVM binary exists for the host triple, bootstrap previously built LLVM from source silently without any notification.

This PR adds a WARNING and HELP message when download-ci-llvm = true is explicitly requested on an unsupported target.

Verification

  • cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions (1 passed, 0.00s)
  • python x.py check (Passed)
  • python x.py fmt --check (Passed)

r? @jieyouxu
@rustbot label +A-bootstrap

When and are set on a target without alt CI LLVM, bootstrap silently built LLVM from source.nPrint a warning and help message instead.nFixes rust-lang#160919.
@rustbot

Copy link
Copy Markdown
Collaborator

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Thanks for the pull request, and welcome! The Rust Project is excited to review your changes, and you should hear from @jieyouxu (or someone else) some time within the next two weeks.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot

Copy link
Copy Markdown
Collaborator

⚠️Warning⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

@rustbot

Copy link
Copy Markdown
Collaborator

Error: Unknown labels: A-bootstrap

Please file an issue on GitHub at triagebot if there's a problem with this bot, or reach out on #triagebot on Zulip.

@jieyouxujieyouxu left a comment

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.

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

@rustbotrustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 12, 2026
@rustbot

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@HRSRaiden

Copy link
Copy Markdown
Author

Please consult the LLM usage policy. Was this change created with an LLM?

View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix.
Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check)
Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

@jieyouxu

jieyouxu commented Aug 12, 2026

Copy link
Copy Markdown
Member

Please consult the LLM usage policy. Was this change created with an LLM?
View changes since this review

Yes, I used an LLM assistant to help explore the bootstrap codebase, trace the logic in parse_download_ci_llvm and suggest a fix. Afterward, I made the changes and have confirmed the behaviour locally (python x.py check, cargo test, and python x.py fmt --check) Since this is my first contribution, I used an LLM to simply the codebase for me and understand it. Let me know if I missed something or need any more change.

Thank you for the interest in contributing. Please consult the usage policy, where current rules for this repos are that code changes created originally by LLMs generally need to be pre-arranged with a consenting reviewer, and you need to understand the rationale for why the change is correct. You can visit #llm-reviews for examples of such pre-arrangements.

LLMs typically give you these

### Verification
- `cargo test --manifest-path src/bootstrap/Cargo.toml download_ci_llvm_unsupported_assertions` (1 passed, 0.00s)
- `python x.py check` (Passed)
- `python x.py fmt --check` (Passed)

which immediately tells the reviewer (me) that the verification isn't verifying the actual change.

I'm going to close this PR as per the LLM usage policy and rust-lang/compiler-team#893.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 12, 2026
@HRSRaiden
HRSRaiden deleted the fix-160919-ci-llvm-warning branch August 12, 2026 08:03
@Kobzol

Copy link
Copy Markdown
Member

This should be implemented in a different way, in a centralized place, once we actually have that centralized place for LLVM CI handling (#160916).

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

llvm.download-ci-llvm = true + assertions = true with unavailable alt CI LLVM shows no warnings/errors, tries to build LLVM

4 participants

@HRSRaiden@rustbot@jieyouxu@Kobzol