Releases: vectorgrp/sil-kit
v4.0.35
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
- Memory management documentation introduced.
- Integration tests for communication in the stop/shutdown/abort handlers.
Changed
- When building the SIL Kit documentation, the sphinx build command is no longer called in a pipenv.
Fixed
- Ensured that calling
ISystemController::AbortSimulation()
does not lead to the system controller
terminating prior to other participants receiving its abort message. - Ensure that userContext field for external CanFrameTransmitEvents is allways null.
- Fixed warning in VS2017 (x86) build
v4.0.34
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
- Behavior change of
ParticipantState::Error
- Old: Several situations could lead to an
ParticipantState::Error
before the user called
StartLifecycle()
- Reception of an invalid
WorkflowConfiguration
- Remote participant disconnected
- Reception of
AbortSimulation
- Reception of an invalid
- New:
ParticipantState::Error
should only be reached afterStartLifecycle()
was called- Reception of a WorkflowConfiguration is not validated before
StartLifecycle()
- A disconnected remote participant is only transitioned to
ParticipantState::Error
if he had
a started Lifecycle - Reaction on
SystemCommang::AbortSimulation
is deferred beforeStartLifecycle()
(see below)
- Reception of a WorkflowConfiguration is not validated before
- Old: Several situations could lead to an
- Behavior change of
SystemCommand::AbortSimulation
- Old: Reception of
AbortSimulation
beforeStartLifecycle()
led toParticipantState::Error
- New: Reception of
AbortSimulation
beforeStartLifecycle()
is firstly ignored. A later call
toStartLifecycle()
then directly leads to an abort (transition to
ParticipantState::Aborting
, calling theAbortHandler
)
- Old: Reception of
- clang presets in
CMakePresets.json
now have the clang version in their names - Added an internal barrier between
ParticipantState::Shutdown
and setting the final state
promise. This ensures that the participant state updates are all transmitted while shutting down. - Revised log messages when shutting down / disconnecting participants
- Graceful, participant has lifecycle: "Participant <participantName> has disconnected after
gracefully shutting down", - Not graceful, participant has lifecycle: "Participant <participantName> has disconnected
without gracefully shutting down." - Registry shutdown: "Connection to SIL Kit Registry was lost - no new participant connections can
be established." - Participant without lifecycle: "Participant <participantName> has disconnected."
- Graceful, participant has lifecycle: "Participant <participantName> has disconnected after
Fixed
- Made simulation time stop for all coordinated participants when one coordinated participant
disconnects ungracefully
v4.0.33
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
- New experimental extension of the LIN API that allows a user to send frame headers and respond to
them without setting up a static configuration beforehand. - Added link to FMU importer in Readme.md
Changed
- Restructured the documentation to have separate sections for overview. It is now divided into an
overall introduction, a developer guide, and a user guide. - Removed internal use of exceptions for failing connections to the registry if another connection
mechanism succeeded.
Fixed
- Fixed missing entry of RegistryAsFallbackProxy in YAML schema.
v4.0.32
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
- Ensure that the registry rejects a connecting participant if a participant with the same name is
already connected.
v4.0.31
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
- Improved Lifecycle and TimeSyncService features:
- Full support for Operation Mode Autonomous with TimeSyncService including hopping onto / leaving
a running simulation - Abort simulation in case Coordinated participants want to join a running simulation
- Abort simulation in case an Autonomous with TimeSyncService sees an incompatible participant
- Full support for Operation Mode Autonomous with TimeSyncService including hopping onto / leaving
Fixed
- Fixed a bug in internal barriers where in-between connecting participants could break the
communicaiton guarantees - Fixed transition when aborting from ErrorState, now the state changes to Shutdown like all
aborting paths (formery the transition was to ShuttingDown) - Internal fixes for thread-safety
- Fixed that the SimTask cannot be triggered again after calling
ILifecycleService::Stop()
in the
SimTask
Changed
- CreateLifecycleService with OperationMode::Invalid now throws a ConfigurationError
- Improved documentation on how to run demos in asynchronous mode
v4.0.30
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
- Added optional timeout mechanism to RPC service.
Fixed
- Fix builds with CMake versions before
3.19
- Fixed crash in SilKitRpcDemo when run with
<config> Client --async
without a server.
Changed
- SIL Kit Demos (Can, Ethernet, Rpc, Lin, and PubSub) with
--async
now use an autonomous
lifecycle. - Refactored documentation for participant configurations: The intent was made clearer, noting that
it is an optional feature.
v4.0.29
v4.0.28
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
- Added documentation for Data Serialization/Deserialization (SerDes) API
Fixed
- Fixed inconsistencies in API documentation
- Fixed starting the registry without the
--registry-configuration
parameter
v4.0.27
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
- Added detection of simulation start and end for the dashboard.
- The simulation id initialization is deferred until the first dashboard relevant event happens.
- A simulation is considered as ended, when the last participant disconnects.
Added
- SIL Kit Registry (
sil-kit-registry(.exe)
)- Support for overriding command line settings via a YAML configuration file
v4.0.26
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
- Introducing an internal communication barrier between participant states. This happens in the
transition from the states ServicesCreated to CommunicationInitializing and from Stopped to
ShuttingDown. It leads to extended communication guarantees in the CommunicationReadyHandler,
primarily for participants that use the autonomous lifecycle (see the documentation for details).
Fixed
- Corrected spelling mistakes in the documentation
- The dashboard is disabled for cross-builds to QNX, to avoid build errors