-
Notifications
You must be signed in to change notification settings - Fork 7
feat: update LLVM/Clang to version 20 #1125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR updates the C++ development container's LLVM/Clang toolchain from version 19 to version 20, along with associated dependencies to maintain compatibility with the new major version.
Changes:
- Upgraded Clang toolchain and all related LLVM tools from version 19 to 20
- Updated Include What You Use from version 0.23 to 0.24
- Updated Mull mutation testing tool from 0.27.1 to 0.29.0
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
.devcontainer/cpp/apt-requirements-clang.json |
Updated all Clang/LLVM package versions from 19 to 20, including new version numbers and updated Mull to 0.29.0 |
.devcontainer/cpp/Dockerfile |
Changed default CLANG_VERSION from 19 to 20 and INCLUDE_WHAT_YOU_USE_VERSION from 0.23 to 0.24 |
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
✅
|
| Descriptor | Linter | Files | Fixed | Errors | Warnings | Elapsed time |
|---|---|---|---|---|---|---|
| ✅ ACTION | actionlint | 20 | 0 | 0 | 0.55s | |
| ✅ DOCKERFILE | hadolint | 3 | 0 | 0 | 0.71s | |
| ✅ GHERKIN | gherkin-lint | 6 | 0 | 0 | 2.4s | |
| ✅ JSON | npm-package-json-lint | yes | no | no | 0.47s | |
| ✅ JSON | prettier | 21 | 4 | 0 | 0 | 0.56s |
| ✅ JSON | v8r | 21 | 0 | 0 | 7.58s | |
| ✅ MARKDOWN | markdownlint | 12 | 0 | 0 | 0 | 0.97s |
| ✅ MARKDOWN | markdown-table-formatter | 12 | 0 | 0 | 0 | 0.23s |
| ✅ REPOSITORY | checkov | yes | no | no | 17.64s | |
| ✅ REPOSITORY | gitleaks | yes | no | no | 0.52s | |
| ✅ REPOSITORY | git_diff | yes | no | no | 0.01s | |
| ✅ REPOSITORY | grype | yes | no | no | 28.6s | |
| ✅ REPOSITORY | secretlint | yes | no | no | 0.89s | |
| ✅ REPOSITORY | syft | yes | no | no | 1.86s | |
| ✅ REPOSITORY | trivy | yes | no | no | 7.18s | |
| ✅ REPOSITORY | trivy-sbom | yes | no | no | 0.22s | |
| ✅ REPOSITORY | trufflehog | yes | no | no | 2.2s | |
| lychee | 80 | 1 | 0 | 21.73s | ||
| ✅ YAML | prettier | 28 | 0 | 0 | 0 | 0.99s |
| ✅ YAML | v8r | 28 | 0 | 0 | 8.13s | |
| ✅ YAML | yamllint | 28 | 0 | 0 | 0.78s |
Detailed Issues
⚠️ SPELL / lychee - 1 error
[IGNORED] docker://pandoc/extra:3.7.0@sha256:a703d335fa237f8fc3303329d87e2555dca5187930da38bfa9010fa4e690933a | Unsupported: Error creating request client: builder error for url (docker://pandoc/extra:3.7.0@sha256:a703d335fa237f8fc3303329d87e2555dca5187930da38bfa9010fa4e690933a)
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads | Network error: Forbidden
[IGNORED] https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/philips-software/amp-devcontainer | Unsupported: Error creating request client: builder error for url (vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/philips-software/amp-devcontainer)
📝 Summary
---------------------
🔍 Total..........126
✅ Successful.....123
⏳ Timeouts.........0
🔀 Redirected.......0
👻 Excluded.........0
❓ Unknown..........0
🚫 Errors...........1
Errors in .github/TOOL_VERSION_ISSUE_TEMPLATE.md
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads | Network error: Forbidden
See detailed reports in MegaLinter artifacts
Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)
- Documentation: Custom Flavors
- Command:
npx [email protected] --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,DOCKERFILE_HADOLINT,GHERKIN_GHERKIN_LINT,JSON_V8R,JSON_PRETTIER,JSON_NPM_PACKAGE_JSON_LINT,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_GRYPE,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|




🚀 Hey, I have created a Pull Request
Description of changes
This pull request updates the C++ development container to use Clang 20 and the latest version of Include What You Use. The main changes are focused on upgrading toolchain versions to ensure compatibility with the latest features and improvements.
Toolchain upgrades:
.devcontainer/cpp/apt-requirements-clang.json.CLANG_VERSIONargument in.devcontainer/cpp/Dockerfilefrom 19 to 20.Other dependency updates:
INCLUDE_WHAT_YOU_USE_VERSIONargument in.devcontainer/cpp/Dockerfilefrom 0.23 to 0.24.mullmutation testing tool from version 0.27.1 (for Clang 19) to 0.29.0 (for Clang 20) in.devcontainer/cpp/apt-requirements-clang.json.✔️ Checklist