Libra 中使用的 rust crates

2019 年 6 月 19 日 程序人生

昨天朋友圈被 Facebook 的 Libra 刷屏。网上有很多关于 Libra 的快文章,从上帝视角到技术细节,从经济模型到语言实现,可谓是各领风骚,我就不凑短期的热闹。因为最近在学 Rust,就在本地 build libra 的漫长时间里,整理了 Libra 的依赖 —— 我想一个语言的初学者都会有类似的问题,一个大公司(成熟团队)所做的项目,究竟会用到哪些生态中成熟的类库?毕竟,awesome-xxx 过于大而全,反而不便甄选。我之前也整理过 tikv 的依赖,发现一些关键库的使用,大家英雄所见略同。libra 因为涉及到 cryptocurrency,相关的加密算法也额外多些。具体细节大家移步(可以点击原文链接):https://github.com/tyrchen/unchained/blob/master/code/libra.md。因为我直接从编译时下载的 log (Downloaded xxx) 来抓的依赖,所以里面有依赖的依赖。

有同学可能好奇是怎么做的,其实很简单:我把抓下来的一行行文字,类似:

Downloaded arc-swap v0.3.11


放在 vscode 里用 regex find/replace 成:

## [arc-swap (v0.3.11)](https://crates.io/crates/arc-swap)


具体的 regex 长这样:

Downloaded\s+([\w_-]+)\s+(v[^$]+)$


vscode 里的截图:


然后用 sort lines 给它们排个序,去重,然后 option + click 每个链接,读 crates.io 的文档,复制其描述,然后放上例子 —— 这是个苦力活,主要是一个个做阅读理解的时间比较长。


libra  里面用了 pingcap 出品的 grpc-rs 和 rust-rocksdb。其中 rust-rocksdb 并没有放在 crates.io 里,猜想原因之一是 crates.io 里已经有同名 library。pingcap 威武!tikv 威武!


本来这篇就像发个文字的,结果超了 600 字不让发,所以之后搞成图文,大家将就看吧。

登录查看更多
0

相关内容

Rust 是一种注重高效、安全、并行的系统程序语言。
【干货书】现代数据平台架构,636页pdf
专知会员服务
257+阅读 · 2020年6月15日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
121+阅读 · 2020年5月10日
《DeepGCNs: Making GCNs Go as Deep as CNNs》
专知会员服务
31+阅读 · 2019年10月17日
AWVS12 V12.0.190530102 windows正式版完美破解版
黑白之道
29+阅读 · 2019年8月24日
微信小程序支持webP的WebAssembly方案
前端之巅
19+阅读 · 2019年8月14日
使用 C# 和 Blazor 进行全栈开发
DotNet
6+阅读 · 2019年4月15日
Python3.8新特性概览
Python程序员
4+阅读 · 2018年12月8日
已删除
生物探索
3+阅读 · 2018年2月10日
浅谈浏览器 http 的缓存机制
前端大全
6+阅读 · 2018年1月21日
前端高性能计算(4):GPU加速计算
前端大全
7+阅读 · 2017年10月26日
A Modern Introduction to Online Learning
Arxiv
21+阅读 · 2019年12月31日
Arxiv
13+阅读 · 2019年4月9日
Arxiv
4+阅读 · 2019年4月3日
Learning to Weight for Text Classification
Arxiv
8+阅读 · 2019年3月28日
Deep Learning for Generic Object Detection: A Survey
Arxiv
14+阅读 · 2018年9月6日
Video-to-Video Synthesis
Arxiv
9+阅读 · 2018年8月20日
Arxiv
5+阅读 · 2018年4月30日
Arxiv
5+阅读 · 2018年1月29日
VIP会员
相关资讯
AWVS12 V12.0.190530102 windows正式版完美破解版
黑白之道
29+阅读 · 2019年8月24日
微信小程序支持webP的WebAssembly方案
前端之巅
19+阅读 · 2019年8月14日
使用 C# 和 Blazor 进行全栈开发
DotNet
6+阅读 · 2019年4月15日
Python3.8新特性概览
Python程序员
4+阅读 · 2018年12月8日
已删除
生物探索
3+阅读 · 2018年2月10日
浅谈浏览器 http 的缓存机制
前端大全
6+阅读 · 2018年1月21日
前端高性能计算(4):GPU加速计算
前端大全
7+阅读 · 2017年10月26日
相关论文
A Modern Introduction to Online Learning
Arxiv
21+阅读 · 2019年12月31日
Arxiv
13+阅读 · 2019年4月9日
Arxiv
4+阅读 · 2019年4月3日
Learning to Weight for Text Classification
Arxiv
8+阅读 · 2019年3月28日
Deep Learning for Generic Object Detection: A Survey
Arxiv
14+阅读 · 2018年9月6日
Video-to-Video Synthesis
Arxiv
9+阅读 · 2018年8月20日
Arxiv
5+阅读 · 2018年4月30日
Arxiv
5+阅读 · 2018年1月29日
Top
微信扫码咨询专知VIP会员