dora-rs :机器人中间件项目
dora 是一个基于 Rust 的机器人框架,目标是成为一个低延迟、可组合和分布式的面向 SDV 和 无人驾驶的数据流计算平台。,旨在比当前机器人应用标准 ROS/ROS 2 好 10 倍,成为 ROS/ROS2/Autosar 的替代者。
Rust-os Blog的作者 Philip Opperman是 dora 主力开发者之一 。
dora 通信层暂时依赖于 eclipse-zenoh/zenoh,关于zenoh 的介绍可以参考文章 开源产品 | eclipse zenoh 助力雾计算和边缘计算。dora-rs 的通信层正在被重新设计,目标是将数据面的控制和传输技术分离,比如算子都在一台机器部署的时候,就会用共享内存,这样延时很低。
更多文档参考:https://dora-rs.github.io/dora/
并且还配套有基于dora的自动驾驶入门套件 dora-drives。
虽然是早期项目,但发展不错,目前正在加入开放原子基金会的过程中,并且在 2023 年春季会基于 dora 开展国际智能驾驶大赛(Openatom Carsmos全球开源自动驾驶算法大赛)。
igrep - 命令行交互式 Grep
igrep 是一个交互式的 grep 工具,在后台运行 grep 库,允许用户交互式地选择匹配项,并在选择的文本编辑器(默认为 vim)中打开,支持 Linux,MacOS,Window 等多种平台。
近日其正式发布了 1.0.0 版本,感兴趣的不妨尝试一下。
github 链接:https://github.com/konradsz/igrep
cargo-show-asm 发布 0.2.10 版本
cargo-show-asm 是一个快速查看 rustc 生成的 asm 汇编指令的工具,近日,其发布了最新的版本,带来了很多体验上的优化。
大家可能对 godbolt 比较熟悉,这是一个非常棒的查看 asm 汇编指令的网站,但是,如果想要编译通过,就得把项目中的所有依赖全部拷贝上去,成本有时太高。cargo 提示提供了 cargo rustc -- --emit asm
这个方式能够生成 asm 汇编指令,但是,定位 asm 代码又稍显繁琐,这时候 cargo-show-asm 就派上用场了:
- 首先通过 cargo 安装:
cargo install cargo-show-asm
- 其次在命令行中,指定想要查看汇编指令的函数路径(或者可以唯一确定该符号的字符串):
cargo asm --lib "mini_std::math::lerp"
- 然后就可以看到对应的汇编指令: mini_std::math::lerp: .cfi_startproc movsd xmm3, qword ptr [rip .LCPI25_0] subsd xmm3, xmm2 mulsd xmm3, xmm0 mulsd xmm1, xmm2 addsd xmm3, xmm1 movapd xmm0, xmm3 ret .Lfunc_end25: .size mini_std::math::lerp, .Lfunc_end25-mini_std::math::lerp .cfi_endproc
其不仅支持多种平台,还支持显示 Intel/A&T 两种不同的汇编格式,可以展示 llvm-ir,rustc MIR,wasm 等多种指令,同时还实现了 bash/zsh 的自动补全、彩色输出等功能,是一个非常不错的命令行工具。
github 链接:https://github.com/pacak/cargo-show-asm
mdbook-compress:mdbook 的 pdf 生成器
作者几乎完全使用 Rust 实现了这个 pdf 生成器,并没有无脑借助 Chrome 等浏览器的功能,只有代码高亮依赖于 node.js 和 highlight.js (可选)。
mdbook-compress 可以方便、定制化地为 mdbook 生成可以发布的 pdf,是一个挺实用的小工具,详细操作方式可以参考 github 主页。
github:https://github.com/RosiePuddles/mdbook-compress/