feat: add xsltproc to embedded-cpp flavor#1380
feat: add xsltproc to embedded-cpp flavor#1380André Jordan (andjordan) wants to merge 5 commits into
Conversation
✅
|
| Descriptor | Linter | Files | Fixed | Errors | Warnings | Elapsed time |
|---|---|---|---|---|---|---|
| ✅ ACTION | actionlint | 23 | 0 | 0 | 0.27s | |
| ✅ DOCKERFILE | hadolint | 4 | 0 | 0 | 0.31s | |
| ✅ JSON | npm-package-json-lint | yes | no | no | 0.61s | |
| ✅ JSON | prettier | 45 | 6 | 0 | 0 | 1.25s |
| ✅ JSON | v8r | 45 | 0 | 0 | 19.75s | |
| ✅ MARKDOWN | markdownlint | 13 | 0 | 0 | 0 | 1.35s |
| ✅ MARKDOWN | markdown-table-formatter | 13 | 0 | 0 | 0 | 0.32s |
| ✅ REPOSITORY | betterleaks | yes | no | no | 1.44s | |
| ✅ REPOSITORY | checkov | yes | no | no | 34.12s | |
| ✅ REPOSITORY | gitleaks | yes | no | no | 1.24s | |
| ✅ REPOSITORY | git_diff | yes | no | no | 0.03s | |
| ✅ REPOSITORY | grype | yes | no | no | 76.41s | |
| osv-scanner | yes | 1 | no | 0.72s | ||
| ✅ REPOSITORY | secretlint | yes | no | no | 2.55s | |
| ✅ REPOSITORY | syft | yes | no | no | 3.14s | |
| ✅ REPOSITORY | trivy | yes | no | no | 14.04s | |
| ✅ REPOSITORY | trivy-sbom | yes | no | no | 0.38s | |
| ✅ REPOSITORY | trufflehog | yes | no | no | 8.09s | |
| lychee | 117 | 1 | 0 | 11.1s | ||
| ✅ YAML | prettier | 36 | 0 | 0 | 0 | 1.55s |
| ✅ YAML | v8r | 36 | 0 | 0 | 17.77s | |
| ✅ YAML | yamllint | 36 | 0 | 0 | 1.64s |
Detailed Issues
⚠️ SPELL / lychee - 1 error
📝 Summary
---------------------
🔍 Total..........154
🔗 Unique.........126
✅ Successful.....148
⏳ Timeouts.........0
🔀 Redirected......19
👻 Excluded.........0
❓ Unknown..........0
🚫 Errors...........1
⛔ Unsupported......1
Errors in .github/TOOL_VERSION_ISSUE_TEMPLATE.md
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads (at 38:7) | Rejected status code: 403 Forbidden
Hint: Followed 19 redirects. You might want to consider replacing redirecting URLs with the resolved URLs. Use verbose mode (`-v`/`-vv`) to see redirection details.
Hint: You can configure accepted/rejected response codes with `-a` or `--accept`
⚠️ REPOSITORY / osv-scanner - 1 error
Scanning dir .
Starting filesystem walk for root: /
Scanned .devcontainer/cpp/requirements.txt file and found 20 packages
Scanned .devcontainer/docs/requirements.txt file and found 14 packages
Scanned test/embedded-rust/workspace/cortex-m/Cargo.lock file and found 20 packages
Scanned test/embedded-rust/workspace/cortex-mf/Cargo.lock file and found 20 packages
Scanned test/rust/workspace/cargo/Cargo.lock file and found 1 package
Scanned test/rust/workspace/clippy/Cargo.lock file and found 1 package
Scanned test/rust/workspace/test/Cargo.lock file and found 1 package
Scanned package-lock.json file and found 73 packages
End status: 104 dirs visited, 340 inodes visited, 8 Extract calls, 46.529228ms elapsed, 46.529379ms wall time
Total 2 packages affected by 2 known vulnerabilities (0 Critical, 0 High, 0 Medium, 0 Low, 2 Unknown) from 1 ecosystem.
0 vulnerabilities can be fixed.
+-----------------------------------+------+-----------+------------+---------+---------------+---------------------------------------------------+
| OSV URL | CVSS | ECOSYSTEM | PACKAGE | VERSION | FIXED VERSION | SOURCE |
+-----------------------------------+------+-----------+------------+---------+---------------+---------------------------------------------------+
| https://osv.dev/RUSTSEC-2026-0110 | | crates.io | bare-metal | 0.2.5 | -- | test/embedded-rust/workspace/cortex-m/Cargo.lock |
| https://osv.dev/RUSTSEC-2026-0110 | | crates.io | bare-metal | 0.2.5 | -- | test/embedded-rust/workspace/cortex-mf/Cargo.lock |
+-----------------------------------+------+-----------+------------+---------+---------------+---------------------------------------------------+
Notices
📣 MegaLinter 9.5.0 is out! Discover the new features and security recommendations in the release announcement. (Skip this info by defining SECURITY_SUGGESTIONS: false)
See detailed reports in MegaLinter artifacts
You could have the same capabilities but better runtime performances if you use a MegaLinter flavor:
- oxsecurity/megalinter/flavors/salesforce@v9.6.0 (57 linters)
- oxsecurity/megalinter/flavors/javascript@v9.6.0 (63 linters)
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 mega-linter-runner@9.6.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,DOCKERFILE_HADOLINT,JSON_V8R,JSON_PRETTIER,JSON_NPM_PACKAGE_JSON_LINT,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_BETTERLEAKS,REPOSITORY_GRYPE,REPOSITORY_OSV_SCANNER,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

Show us your support by starring ⭐ the repository
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
📦 Container Size AnalysisNote Comparing 📈 Size Comparison Table
|
There was a problem hiding this comment.
Pull request overview
This PR re-introduces xsltproc into the embedded-cpp devcontainer flavor so XML→C++ transformations used by downstream repos can run inside the container image.
Changes:
- Add
xsltprocto the embedded-cpp tool inventory. - Introduce a pinned apt requirement for
xsltprocfor the embedded-cpp flavor. - Update the shared
cppDockerfile to conditionally install embedded-cpp apt requirements whenBUILD_EMBEDDED_FLAVOR=true.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| .devcontainer/embedded-cpp/tool-inventory.json | Adds xsltproc to the embedded-cpp declared tool set. |
| .devcontainer/embedded-cpp/apt-requirements-embedded-cpp.json | Pins the xsltproc apt package version for embedded-cpp builds. |
| .devcontainer/cpp/Dockerfile | Conditionally installs embedded-cpp apt requirements during embedded flavor builds. |
|



🚀 Hey, I have created a Pull Request
Description of changes
This PR re-introduces
xsltprocinto the embedded-cpp devcontainer flavor so XML→C++ transformations used by downstream repos can run inside the container image.Changes:
xsltprocto the embedded-cpp tool inventory.xsltprocfor the embedded-cpp flavor.cppDockerfile to conditionally install embedded-cpp apt requirements whenBUILD_EMBEDDED_FLAVOR=true.✔️ Checklist