Sudo-rs 依赖项:何时少即是好

主要观点:sudo 工具是重要的特权边界应保证内存安全,在 Tweede golf 和 Ferrous Systems 合作伙伴的帮助下用 Rust 重写,面临最大挑战是 Rust crate 依赖。
关键信息:开发 sudo-rs 时添加约 135 个依赖,后减至 3 个(libcgloblog);依赖会带来负担和信任问题,虽有“站在巨人肩膀上”的好处,但对 sudo-rs 重要性不同;评估依赖时会权衡利弊,如用自己的命令行参数解析替代clap;认为当前 crate 集是风险和收益的良好权衡,对不同项目结论可能不同。
重要细节:开始用 Rust 生态的 crate 快速开发原型,后发现依赖问题开始减少;setuid程序需谨慎对待依赖,不能依赖其考虑特定上下文;反馈曾指出依赖过多难验证代码正确性,后通过评估减少依赖;目前 sudo-rs 在多数 Linux 发行版的打包较容易,法律审查依赖树的机构更青睐现在的代码等。

阅读 13
0 条评论