S-Core v0.5-alpha release notes#
S-Core v0.5-alpha release note
|
status: valid
security: YES
safety: ASIL_B
|
||||
Overview#
This is the first published release of the Eclipse S-CORE platform (v0.5.0-alpha). It brings together the initial set of core modules, reference integrations, and supporting infrastructure needed to build and run example applications such as the scrample demo on multiple target images. The software architecture and implemented modules are illustrated in the diagram below.
This release of Eclipse S-CORE is an early alpha version intended solely for experimentation, test driving project processes, gaining experience in release creation and soliciting feedback. Please be aware, that features may be incomplete, the software may exhibit instability or unexpected behavior, and breaking changes and alterations in scope are likely as development progresses.
Highlights#
First public alpha of the Eclipse S-CORE platform.
Reference integration including the scrample demo application.
Initial set of communication, persistency, orchestration, and base utility modules.
Experimental reference images for QNX, Red Hat AutoSD Linux, and EB corbos Linux for Safety Applications.
Eclipse S-CORE book#
The first version of the Eclipse S-CORE book
is a “how-to” guide for users getting started with the project.
It introduces the core concepts of Eclipse S-CORE and walks through building
the scrample application step by step on top of the platform modules.
Improvements#
This release introduces the initial integrated platform with the modules listed below. For module-specific improvements, refer to the release notes in each module repository.
Bug Fixes#
Bug fixes are tracked and documented per module. Please see the corresponding module release notes for details on fixed issues in this release.
Integrated Software Modules#
Communication#
Zero-copy, shared-memory based inter-process communication for minimal-latency intra-ECU messaging.
Version:
communication v0.1.1Source / tag: Communication GitHub release
Release notes: Communication Release Note (doc__communication_release_note)
Fixed Execution Order Framework(FEO)#
Application Framework which is intended to support data-driven or time-driven applications.
Link to release:
feo v1.0.2Source / tag: FEO GitHub release
- Release notes:
A framework for applications (not for platform services)
For data-driven and time-driven applications (mainly in the ADAS domain)
Support fixed execution order
Supporting reprocessing
Baselibs#
Selection of basic C++ utility libraries for common use in the S-CORE project
Version:
baselibs v0.1.3Source / tag: Baselibs GitHub release
Release notes: Baselibs release notes
Persistency#
Ensures long-term storage and retrieval of data and provides a reliable mechanism for preserving application state and data integrity over time.
Version:
persistency v0.2.1Source / tag: Persistency GitHub release
Notes:
The feature requirements and architecture and component requirements and architecture documents are partially out of date and will be updated in the next release.
See the full persistency release notes for details
Orchestrator (Kyron and orchestration framework)#
Provides:
Kyron – an async runtime for Rust, designed for high-performance async/await execution with functional safety in mind. It offers fine-grained control over scheduling, thread management, and workload isolation via configurable execution engines.
Orchestrator – a framework to build task chains with deterministic execution flow. It lets developers describe cause–effect chains, timing constraints, and error handling in a platform-independent way while keeping application logic separate from deployment and resource management.
Version:
orchestrator v0.0.3Source / tag: Orchestrator GitHub release
Further reading:
Reference integration#
Central integration of Eclipse S-CORE modules
Version:
reference integration v0.5.0-alphaSource / tag: Reference Integration GitHub release
Common#
Integrates all v0.5 modules, including the
scrampledemo application.Provides CI/CD workflows to ensure stability of the reference integration:
Test integration build all functional modules of Eclipse S-Core v0.5 and execute multiple tests to ensure stability of the reference integration for every pr and on every release creation.
Offers complete documentation of all modules.
Reference QNX image#
Provides a QNX x86_64 QEMU image; see reference integration README for usage instructions.
Release verification workflow runs multiple integration tests on the QNX image during release creation.
Provides basic ITF tests. see the documented build commands for running ITF tests locally.
Reference Red Hat AutoSD Linux image (Experimental)#
Provides a Linux-based AutoSD image usable with QEMU for both x86_64 and aarch64; for usage see AutoSD README
Integrates IPC tests (equivalent functionality to the
scrampleexample) using the QM environment.A dedicated build_and_test_autosd execute these tests.
Note: The AutoSD Linux integration is experimental and does not yet follow the full S-CORE process. Bazel integration is still missing and will be addressed in upcoming releases.
Reference Elektrobit corbos Linux for Safety Applications Linux image (Experimental)#
Demonstrates Eclipse S-CORE running on Elektrobit corbos Linux for Safety Applications (EBcLfSA).
Integrates the
scrampledemo application into the “fast-dev” EBcLfSA image (aarch64).In the related CI workflow, all these steps are performed, and the resulting log files are stored and made available for download.
Integration can be executed via QEMU; see the EBcLfSA README for details.
Note: The EBcLfSA integration is experimental. Bazel integration exists, but parts of the integration code will be reworked in future releases.
Associated Infrastructure Modules#
process_description#
Provides a process model establishing organisational rules for developing open source software in the automotive domain, suitable for safety and security contexts.
Version:
process description v0.1.3Standards alignment:
ASPICE 4.0
ISO 26262
ISO 21434
ISO PAS 8926
Release notes: process_description release notes
docs-as-code#
Tooling for linking and generation of documentation.
Version:
docs-as-code v2.0.2Source / tag: docs-as-code GitHub release
tooling#
Tooling for S-CORE development.
Version:
tooling v1.0.2Source / tag: tooling GitHub release
ITF (Integration Testing Framework)#
Framework for executing feature integration tests on the reference image.
Version:
itf v0.1.0Source / tag: ITF GitHub release
- Capabilities:
Bazel macro py_itf_test
Pinging target
SSH and SPTP module
DLT module
Starting Qemu from the reference_integration repository
- Documentation:
Test Scenarios#
Testing framework providing a backend for parametrizable scenarios in Rust and C++, usable in common test case implementations and parallel implementations.
Version:
test_scenarios v0.3.0Source / tag: Test Scenarios
Components: -
test_scenarios_cpp– C++ framework for defining, running, and managing test scenarios. -test_scenarios_rust– equivalent implementation in Rust.Both frameworks share the same concepts and support automated testing, scenario grouping, and integration with CLI tools.
Performed Verification#
The following tests were executed as part of this release:
All C++ modules built successfully with GCC and QCC toolchains.
All Rust modules built successfully with the Rust toolchain.
Each module executed its unit tests.
Basic integration tests were executed on the reference QNX image in QEMU via the release verification workflow
for persistency and orchestration modules, component and feature integration tests were executed using the
score-test-scenariosframework; see feature_showcase and feature_integration_tests for more details.
Known Issues#
see release notes of every module seperately
Upgrade Instructions#
none, first published release.
Contact Information#
For any questions or support, please contact the Project lead or raise an issue/discussion.