Releases: vectorgrp/sil-kit
v5.0.2
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Fixed
-
asio: replaced the deprecated (and now removed) methodsasio::io_context::postandasio::io_context::dispatchwith the suggested alternativesasio::postandasio::dispatch -
capi: fixed an include cycle betweensilkit/capi/EventProducer.handsilkit/capi/NetworkSimulator.h -
sil-kit-monitor: fixed missing output due to changes to the default loglevels -
logs: fixed logging in JSON format without any key-value pairs -
docs: fixed broken formatting introubleshooting/advanced -
ci: fixed usage of cmake for macOS runners -
cmake: fixed QNX preset and toolset -
git: fixed broken build dir glob pattern in.gitignorefile -
quality: fixed various warnings
Changed
-
sil-kit-system-controller: improved the behavior of thesil-kit-system-controller, allowing single participants to drop out and rejoin before all required participants are connected without having to restart other required participants or the system controller. -
docs: document the ability to override the history length ofDataPublishercontrollers in the participant configuration -
sil-kit-registry: enable collecting metrics by default -
tests: added timeout for the participant modes test and a separate (overall) timeout for test execution in the CI -
cmake: added thedistribpreset and removed various superfluous presets -
docs: document the (experimental) configuration settings that influence metrics generation and collection -
quality: made multiple derived classesfinal
Added
-
sil-kit-monitor: add-l/--loglevelcommandline arguments to control the log level -
logs: added message target in theTokey-value field of trace messages -
logs: add trace logs for sending a historized pub/sub messages -
logs: added arawkey for arbitrary JSON objects in log messages -
ci: addedclang-tidyto the CI -
ci: added devcontainer forclang-format, format all files, and ensure that the check is enabled in the CI -
ci: added a check to ensure that all commits are properlySigned-of-byas defined by DCO
v5.0.1
This is a Quality Assured Release.
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
[5.0.1] - 2025-08-07
Fixed
- build: fix building from source of the SIL Kit Demos in the distribution packages
v5.0.0
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
[5.0.0] - 2025-07-29
Added
- API: added new SilKit_ParticipantConfiguration_ToJson function which exports the complete parsed and validated participant configuration as a JSON string.
- dashboard: add performance related metrics.
Fixed
- public API: removed harmful noexcept and added a missing virtual destructor.
Changed
- dashboard: removed legacy v1.0 API.
- build: the internal code now uses C++17
- config: we replaced yaml-cpp with rapidyaml and rewrote the YAML/JSON parsing.
v4.0.56
This is a Quality Assured Release.
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Note: the Ubuntu 18.04 binary distribution package is deprecated
We are sunsetting the distribution of Ubuntu 18.04 packages with this release.
We already provide Ubuntu 24.04 binary distribution packages with this release.
Note: we will change our versioning scheme to semantic versioning
Please read the full notice in the
Semantic Versioningpage in the documentation.
Fixed
-
Three static methods which are part of the C++ (Hourglass) API implementation and passed as
callbacks to the C-API, did not use the correct calling convention if the default calling
convention wasn't__cdeclon Windows. This has been remedied. -
SilKitDemoSimStepAsyncdid not work as intended, due to the predicate lambda capturing
by-value instead of by-reference. -
During hop-on of another participant, participants will send the current simulation step
instead of the next simulation step, if they are inside of their simulation step.
Changed
-
The participant configuration
TcpNoDelaynow defaults to true. Please note, that this has performance implications.
On Linux platforms this improves throughput, and latency in particular when used in combination withTcpQuickAck: true. -
Updated third party libraries
asioto1.30.2fmtto11.1.4spdlogto1.15.2
-
Add the
myst_parserextension to documentation build, which allows using Markdown
for documentation pages -
Automatically 'upgrade' the
Doxyfileusingdoxygen -u, which avoids warnings
when with differentdoxygenversions across distibutions -
CAN XL: Update documentation, tests, and the demo to (better) reflect that we support it
Added
- The documentation now contains a page that explains the upcoming new versioning scheme.
- Experimental 'other-simulation-steps-completed' API
v4.0.55
This is a Quality Assured Release.
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Changed
-
Important
SilKit_LinDataLengthUnknownin the C headerLin.hused to be aconstglobal, which could cause linker issues if the header file is used in multiple translation units in the same binary.It has been turned into a
#define, like all the other constants in the C header files.The symbol was not present in the dynamic symbol table of the
SilKit.dll/.so, so this change does not break the ABI of the shared libraries. -
Aligned C API error return codes
SilKit_ReturnCode_<ERRORTYPE>and SIL Kit specific exceptions.
All exceptions are now forwarded through the hourglass and thrown in the C++ API.
For users of the C API, a more detailed error handling is possible with the extended error return codes.Before, all execptions ended up as
SilKitErroron the user side. -
Overhaul of SIL Kit demos
-
Restructured into categories communication, api and tools
-
Communication demos: Can, Ethernet, Lin, Flexray, PubSub and Rpc demos
- These demos are split into one participant per executable
- Basic SIL Kit features are implemented in a base class used by the demos
- No command line arguments needed for basic execution (with time synchronization and coordinated start)
- Useful command line arguments are provided for all demos (e.g. rename the participant or network, logging, execution modes)
- The old
--asyncmode of the demos now is accessible by--async --autonomous(or short form-aA)
-
Added
-
New demos for basic API usage
- SimpleCan
- Orchestration demos
-
Demos: Sample participant configurations
Fixed
-
Registry: Block all attempts to connect with an already present participant name, not just the first.
-
CMake: When demos are installed into the
bindirectory under the installation prefix, their RPATH will be set such that they are able to find thelibSilKit[d].so. This is the same RPATH value as the utility executables. -
System Monitor: Show all participants, not just the ones that joined during the monitors execution.
v4.0.54
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Added
- Override the labels of
DataPublisher,DataSubscriber,RpcClient, andRpcServerinstances through the participant configuration, extending the already possible override of the topic / function name.
Changed
- Changed log messages for controller and participant creation, message tracing, system state tracker and time sync service
- Revised the documentation (demos, troubleshooting, doxygen output, file structure)
- Improved platform/compiler/architecture detection
Fixed
- Failure to configure and package cross-builds to QNX on Windows
v4.0.53
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Changed
-
Harmonized user interface of commandline utilities Registry, Monitor, and SystemController.
All utilities listen to OS signals to detect termination request.
- Old: Monitor and Registry wait for the user to press
[Enter]to shutdown. - New: Monitor and Registry can be requested to shutdown via
[Ctrl]-[C]. Registry option-s, --use-signal-handleris deprecated.
All utilities no longer require user interaction.
- Old: Registry, Monitor and System Controller prompt the user by default to press
[Enter]to end process after shutdown. - New: All utilities terminate without prompting for user input. SystemController option
-ni, --non-interactiveis deprecated.
- Old: Monitor and Registry wait for the user to press
-
The Logger now adds the participant's name (as a normalized string) to the user-defined
LogNamefor file sinks. -
Implemented the union (de-)serialization stubs in the
silkit/util/serdesheaders.
Fixed
-
If using the
SimStepHandlerAsync, the log message that reports the end of the simulation step is now printed after the call toCompleteSimulationStep. -
Fixed an issue with the NetSim API that caused an exception when used with log level
trace.
v4.0.52
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Fixed
- Fixed crash in sil-kit-registry utility that happened when the dashboard is enabled, but not actually available.
Added
- Message aggregation for simulations with time synchronization. Accessible via the experimental section in the Participant Configuration (Experimental | TimeSynchronization | EnableMessageAggregation).
- This release contains a Windows MSI Installer for SIL Kit.
- This release contains Ubuntu 20.04 *.deb packages for SIL Kit.
v4.0.51
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Added
- Couple the virtual time to the wall clock. An animation factor can be configured that describes
how fast the simulation is allowed to run relative to the local wall clock. Accessible via a new
experimental section in the Participant Configuration (Experimental | TimeSynchronization |
AnimationFactor). - Event flow documentation for the Network Simulation API.
- Registry (Dashboard): Automatically use bulk-endpoint if it is available
v4.0.50
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
This is a quality assured release.
Fixed
- Fixed crash in
sil-kit-system-controllerutility. - Fixed source directory contents in
.ziprelease archives.