Skip to content

AimRT v0.9.0 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 configurations for richer configuration;
  • Added third-party library asio, runtime::core no longer references boost, but instead references the standalone asio library to reduce dependencies;
  • Added aimrt_cli trans command to convert bag files recorded using the aimrt record_playback plugin to ros2 bag files;
  • Added Echo plugin for message echoing;
  • Added timer based on executor for convenient scheduled tasks;
  • aimrt_py channel and rpc support ros2 message types;
  • Added Proxy plugin for message forwarding;

Minor Changes:

  • Shortened the file path length of some examples;
  • Optimized code structure, moved code from src/runtime/common/net to new location src/common/net;
  • Upgraded jsoncpp to version 1.9.6 to optimize some cmake issues;
  • Added aimrt_py channel benchmark example;
  • Added aimrt_py rpc benchmark example;
  • iceoryx plugin checks for the existence of libacl before compiling, and does not compile if it is absent;
  • Plugins providing RPC services now support specifying service name;
  • Provided a script to run examples with one click and generate test reports;
  • Fixed the issue of probabilistic crashes on the server side during multi-threaded rpc calls in aimrt_py;
  • Provided Context support for the channel functionality of aimrt_py;
  • Now supports installing aimrt::runtime::core;
  • Removed some unused protocols;
  • Supports custom log output formats;
  • Supports periodic proactive log flushing to disk;
  • grpc plugin supports ros2 messages and json serialization format;
  • mqtt added configuration options to support ssl/tls one-way/two-way authentication for encrypted transmission;
  • mqtt plugin will automatically retry asynchronous connection when the broker is not started, and provides reconnection interval configuration options;
  • ros2 plugin supports custom rpc service names;
  • asio thread/strand executor now supports whether to use system clock;