Skip to content

eCAL v5.11.0

Compare
Choose a tag to compare
@FlorianReimold FlorianReimold released this 15 Dec 14:24
· 59 commits to support/v5.11 since this release

Attention: eCAL Acknowledge Feature Broken

The eCAL acknowledge feature seems to be broken with this Release.
For anybody relying on that feature, we recommend to downgrade to eCAL 5.10.4 for the time being.
We will release a fix after the holidays early next year.

Highlights

  • New Apps:

    • Mon TUI (ecal_mon_tui) - An htop-like eCAL Monitor running in a terminal

    • Measurement Cutter (ecal_meas_cutter) for trimming and cutting eCAL Measurements (-> Documentation)

  • eCAL Rec can now record each topic to its own file

  • Added Shared-Memory-Monitoring-Layer (experimental, enable via ecal.ini!). This new monitoring layer can locally match publishers and subscribers and distribute monitoring information without the need for UDP Multicast.

  • GUI Apps now start in dark-mode by default

  • Setup for Windows now supports non-admin installations

Changelog

Core:

  • SHM Layer: when using the SHM Acknowledgement, that is now sent after the callback (not before) and subscribers are allowed to act in parallel.
  • SHM Layer Handshake: Fixed and extended API to control the behavior on a per-publisher base
  • Added Shared-memory-monitoring layer (experimental) that can distribute monitoring information locally without UDP. Must be explicitely enabled in ecal.ini.
  • Added new API Call: CPublisher::SetTypeName()
  • Linux: Added option to join Multicast groups on all interfaces. Must be enabled in ecal.ini.
  • Windows: fixed a bug that could have caused sleep functions to sleep longer than expected when the system time would jump backwards
  • Internal rework and refactoring of the SHM Layer
  • Internal improvement: Descgate now prefers publisher's descriptions over subscriber's

Play:

  • eCAL Play GUI can now display more columns with extended information (Channel Type, Total channel size, Min + Max timestamps)
  • Linux: .ecalmeas files are now by default associated with eCAL Play GUI and display the correct icon
  • Linux: eCAL Play now increased the maximum number of open file descriptors itself
  • All GUIs now start by default in dark-mode

Rec:

  • Added One-file-per-topic feature. When enabled, the recorder will put each topic in its own HDF5 file.
  • Rec GUI: Added "Browse" button for selecting a measurement root dir
  • Linux: .ecalrec files are now by default associated with eCAL Rec GUI and display the correct icon
  • All GUIs now start by default in dark-mode

Sys:

  • Linux: .ecalsys files are now by default associated with eCAL Sys GUI and display the correct icon
  • All GUIs now start by default in dark-mode

Mon:

  • Added htop-like TUI (text user interface) application: ecal_mon_tui
  • Renamed old monitor CLI to ecal_mon_cli (it was just plain ecal_mon before)
  • The Protobuf reflection now shows the size of bytes fields
  • Linux: Added support for opening ecal.ini as root when using gnome-text-editor
  • All GUIs now start by default in dark-mode

Meas Cutter:

ecalhdf5 API

  • Fixed a bug that enabled copying a C++ HDF5Meas object which would lead to a crash
  • Added API to save each eCAL topic to its own HDF5 file

Python:

  • Added possibility to read binary data from measurements
  • Added Publisher set_topic_description() and set_topic_type_name() API

CMake & Project structure

  • Removed CMake code that would explicitly fix set the CXX Standard and replaced it with target_options
  • Split eCAL::pb into eCAL::core_pb, eCAL::app_pb and eCAL::time_pb. The old target is still available for compatibility. The pb targets now compile to shared objects on Linux.
  • Udpcap is now available as a separate library and is integrated as a submodule

Samples:

  • Added eCAL Play stepper. This sample can step / stop an eCAL Player based on an input topic.
  • ping_client_dyn sample adapted to demonstrate correct usage of eCAL::protobuf::CProtoDynDecoder
  • Added sample on how to publish / subscribe binary data with C++

Setup:

  • Windows installer now supports non-admin installations
  • libcurl libs are not included in the eCAL installation anymore, as they provide no benefit for the user

eCAL 5.11.0 is patch-level equivalent to eCAL 5.10.4 and 5.9.12