v0.9.0

重要修改

  • 优化了 zenoh 插件:

    • 添加了 zenoh rpc 后端;

    • zenoh 插件支持网络通信和共享内存两种通信方式;

    • 可以传入 zenoh 原生配置进行更丰富的配置;

  • 新增了第三方库 asio,runtime::core 不再引用 boost,改为引用独立的 asio 库,以减轻依赖;

  • 新增 aimrt_cli trans 命令,用于将 使用 aimrt record_playback 插件录制的 bag 文件转换为 ros2 的 bag 文件;

  • 新增 Echo 插件,用于回显消息;

  • 新增了基于执行器的定时器,方便执行定时任务;

次要修改

  • 缩短了一些 examples 的文件路径长度;

  • 优化代码结构,移动代码 src/runtime/common/net 至新位置 src/common/net;

  • 升级 jsoncpp 至 1.9.6 版本以优化一些 cmake 问题;

  • 新增了 aimrt_py channel benchmark 示例;

  • 新增了 aimrt_py rpc benchmark 示例;

  • iceoryx 插件在编译前先检查是否存在libacl,不存在则不进行编译;

  • 提供 RPC 服务的插件现在支持指定 service name;

  • 提供一键运行example的脚本,并生成测试报告;

  • 修复 aimrt_py 多线程 rpc 调用 server 端概率性崩溃的问题;

  • 为 aimrt_py 的 channel 功能提供了 Context 支持;

  • 现在支持 install aimrt::runtime::core;

  • 删除一些未使用的协议;

  • 支持日志自定义输出格式;

  • 支持日志定期主动落盘操作;

  • grpc 插件支持 ros2 消息以及 json 序列化格式;

  • mqtt 新增配置项以支持 ssl/tls 单向认证/双向认证的加密传输;

  • mqtt 插件在broker未启动时,会自动重试异步连接, 并提供重连间隔配置项;

  • ros2 插件支持自定义 rpc 服务名称;

  • asio thread/strand 执行器现在支持是否使用 system clock;