AimRT v0.9.0-rc2 Release!
Main Changes (Compared to v0.8.3):
Major Changes:
- Optimized the zenoh plugin:
- Added zenoh rpc backend;
- Zenoh plugin supports both network communication and shared memory communication;
- Allows passing native zenoh configuration for richer settings;
- Introduced asio as a third-party library, runtime::core now uses standalone asio instead of boost to reduce dependencies;
- Added aimrt_cli trans command for converting bag files recorded by aimrt record_playback plugin to ros2 bag files;
- Added Echo plugin for message echo functionality;
- Introduced executor-based timer for convenient scheduled tasks;
Minor Changes:
- Shortened file paths for some examples;
- Optimized code structure by moving src/runtime/common/net to src/common/net;
- Upgraded jsoncpp to version 1.9.6 to resolve cmake issues;
- Added aimrt_py channel benchmark example;
- Added aimrt_py rpc benchmark example;
- Added libacl dependency check before compiling iceoryx plugin;
- RPC service plugins now support custom service name specification;
- Provided one-click script for running examples and generating test reports;
- Fixed occasional server-side crashes in aimrt_py multi-threaded rpc calls;
- Added Context support for aimrt_py channel functionality;
- Added support for installing aimrt::runtime::core;
- Removed unused protocols;
- Added support for custom log output formats;
- Added support for periodic log flushing to disk;
- Grpc plugin supports ros2 message and json serialization formats;
- Added configuration options for mqtt to support ssl/tls single-way and mutual authentication for encrypted transmission;
- Mqtt plugin will automatically retry asynchronous connection if the broker is not started, with configurable reconnection interval;
- Ros2 plugin supports custom rpc service names;
- Asio thread/strand executor now supports the option to use the system clock;