Tool Versions#
Devcontainer Image#
Image: ghcr.io/eclipse-score/devcontainer
The devcontainer image is the canonical source for tool versions. Check the image’s Dockerfile and release tags in eclipse-score/devcontainer for the current version matrix.
Toolchain Repositories#
Component |
Repository |
What it provides |
|---|---|---|
C++ toolchain |
GCC/Clang for Linux, QNX cross-compiler |
|
GCC toolchain |
Bazel toolchains for GNU GCC |
|
QNX toolchain |
Bazel toolchains for QNX |
|
Rust toolchain |
Rust stable, Ferrocene (safety-qualified) |
|
Ferrocene builder |
Builder for Ferrocene artifacts |
|
C++ policies |
Warning levels, sanitizers, constraint targets |
|
Rust policies |
Clippy rules, rustfmt configuration |
|
Integration Test Framework |
pytest-based target testing (Docker, QEMU, hardware) |
|
QNX unit test runner |
QEMU microvm test execution for QNX 8 |
CI/CD Components#
Component |
Repository |
What it provides |
|---|---|---|
Reusable workflows |
Shared GitHub Actions workflows (on-pr, daily, tests, coverage, etc.) |
|
Reusable actions |
Composite actions (inter-repo-access, setup-qnx-sdp) |
|
Docs-as-code |
Documentation build tooling (Sphinx extensions, traceability) |
Build System#
Tool |
Source |
|---|---|
Bazel |
Version pinned via |
Bzlmod |
Module system used for all dependency management |
Documentation Tooling#
Tool |
Role |
|---|---|
docs-as-code |
Shared Bazel module for documentation builds |
Sphinx + MyST |
Documentation engine with Markdown support |
pydata-sphinx-theme |
HTML theme with S-CORE branding via |
Mermaid / PlantUML |
Diagram rendering |
sphinx-needs |
Traceability and requirement management |
Version is pinned via bazel_dep in each repository’s MODULE.bazel.
Pre-commit Hooks#
Hook versions are pinned in each repository’s .pre-commit-config.yaml. The hook definitions themselves come from eclipse-score/tooling.
How to check current versions#
Inside a devcontainer:
bazel version # Bazel version
cat .bazelversion # Pinned Bazel version
python3 --version # Python version
pre-commit --version # Pre-commit version
rustc --version # Rust compiler version