Eclipse eCAL (enhanced Communication Abstraction Layer) 5.13.0

Highlights

  • New eCAL Services protocol. The protocol fixes incomplete-message-issues of the previous version.
  • Qt6 compatibility: Official Windows builds will now use Qt 6 and thus now properly scale on HDPI screens.

Changelog

Core:

  • Completely reworked eCAL the eCAL Service implementation (#1072)
    • Introduced a new protocol version (v1) that fixes incomplete-message-issues of the previous version
    • The Client & Server exchange their supported protocol versions to provide downwards compatibility
    • A server can handle multiple clients with different protocol version.
    • A client can be connected to multiple server with different protocol versions.
  • Fixed receive timeout (10 ms) in CSampleReceiver::Receive replaced by function parameter (#1262)
  • Fixed a bug that caused eCAL to show network nodes even when configured in local mode (#1261)
  • Fixed deterministic-random-number bug that in theory could have caused corrupt fragmented eCAL UDP traffic (#1270)
  • Various bugfixes, code cleanup and refactoring (#1171, #1248, #1253, #1264, #1265, #1266, #1269, #1271, #1313, #1373, #1539)
  • Preparation for eCAL 6: marked diverse API functions as deprecated (#1399)(#1414)

All GUI Apps (Mon, Rec, Play, Launcher)

  • Made eCAL compatible with Qt6 (#1315)

eCAL Monitor:

  • Added eCAL and Qt runtime and compile-time versions to the "about" dialog (#1492)

Samples:

  • Added new sample: ecal_perftool (#1241)

MMA:

  • General improvements and corrections of the Linux part (#1284, #1372)

Measurement:

  • Introduced new API (currently marked as experimental, as it may change in the future) (#1307)
  • Various code cleanup and refactoring (#1235)

Language Bindings

Raw C-binding:

  • Add missing eCAL core functions (ecal_is_initialized, ecal_set_unit_name, ecal_getversion_components) (#1300)

Python binding:

  • Add missing eCAL core functions (is_initialized, set_unit_name, getversion_components) (#1300)
  • Added draft for Measurement Writer. The API may change in the future. (#1337)

Build

Submodules:

  • Updated fineftp-server to 1.4.2 (#1408)
  • Updated HDF5 to HDF5 1.10.11 (#1274)
  • Updated spdlog to 1.12.0 (#1275)
  • Updated tcp_pubsub to 1.0.5 (#1484)
  • Updated udpcap (#1551)
  • Build QWT static by default for all os and builds (#1406)

CMake:

  • Introduced project configuration and build with CMakePresets.json (#1380)

Libraries:

  • Added QNX and default OS to EcalParser (#1430)

Documentation:

  • Preparation for eCAL 6: added deprecation documentation (#1443, #1464, #1468)
  • Updated book theme to 1.1.2 (#1455)
  • Downgrade empy from 4.0 due to incompatibility to 3.3.4 (#1461)
  • Dark mode improvement for Sphinx Tabs (#1463)
  • Page footer fix (#1467)
  • Downgrade Sphinx version to <7.3 (#1543)

eCAL 5.13.0 is patch-level equivalent to eCAL 5.12.5

Release Date
Release Type
Minor release